<body>
Parse tree nodes that describe statements.

<p>A statement is a program structure that does not evaluate to a value.
Statements basically just handle control flow and assignments.  All 
statements derive from the {@link dex.compiler.model.statement.Statement} class,
so start there.

<p>In many cases, there are several possible parse trees that can represent
the same idea.  For instance, these three statements parse into separate
<code>Statement</code> subclasses:

<pre>
i = i + 1   // An Assignment node that contains an InfixExpression
i++         // A single IncrementStatement node
i += 1      // An Assignment node with an internal operator and LiteralInteger
</pre>

<p>It might be better to have the parse trees be unambiguous, so that all three
of the above would parse like the first case.  That would eliminate complexity
in some of the subclasses (like <code>Assignment</code>), and macro writers
would only have to deal with one construct when looking for certain ideas.

<p>On the other hand, the way it is enables the macro writer to quickly use
<code>n++</code> and <code>n--</code> to navigate a linked list, for example.

</body>
